package com.jie.server.modules.platform.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.jie.server.modules.platform.entity.Tenant;
import com.jie.common.result.R;
import com.jie.server.modules.platform.vo.TenantResultVo;

import java.util.List;

/**
 * @description: 租户表Service接口
 * @author: xiaojie
 * @since: 2024/12/13 0013
 */
public interface ITenantService extends IService<Tenant>{

    /**
     * 查询租户表
     * @param tenantId 租户表主键
     * @return 租户表
     */
    Tenant selectTenantByTenantId(Long tenantId);

    /**
     * 查询租户表列表
     * @param tenant 租户表
     * @return 租户表集合
     */
    List<TenantResultVo> selectTenantList(Tenant tenant);

    /**
     * 新增租户表
     * @param tenant 租户表
     * @return 结果
     */
    boolean create(Tenant tenant);

    /**
     * 修改租户表
     * @param tenant 租户表
     * @return 结果
     */
    boolean update(Tenant tenant);

    /**
     * 批量删除租户表
     * 
     * @param tenantIds 需要删除的租户表主键集合
     * @return 结果
     */
    int deleteTenantByTenantIds(Long[] tenantIds);

    /**
     * 删除租户表信息
     * 
     * @param tenantId 租户表主键
     * @return 结果
     */
    int deleteTenantByTenantId(Long tenantId);

    /**
     * 新增租户
     * @param tenant 租户表
     * @return 结果
     */
    R addTenant(Tenant tenant);

    /**
     * 修改租户
     * @param tenant 租户表
     * @return 结果
     */
    R updateTenant(Tenant tenant);

}
